const path = require("path");
const webpack = require('webpack');
module.exports = {
    mode: "development", //打包为开发模式
    // 入口配置的对象中，属性为输出的js文件名，属性值为入口文件
    entry: {
    	app: ['webpack-hot-middleware/client', './aws-api.js'],
    }, //入口文件,从项目根目录指定
    output: { //输出路径和文件名，使用path模块resolve方法将输出路径解析为绝对路径
        path: path.resolve(__dirname, "./static/js"), //将js文件打包到dist/js的目录
        filename: "bundle.js", //使用[name]打包出来的js文件会分别按照入口文件配置的属性来命
    },
    devServer: {
        port: 9000,
        host: '0.0.0.0',
        hot: true
    },
    module: {
        rules: [
        {
            test: '/\.js$/',
            exclude: /node_modules/,
            use: {
                loader: 'babel-loader',
                options: {
                    presets: [[
                        '@babel/preset-env',
                        {
                            targets: {
                                ie: '8'
                            }
                        }
                    ]],
                    plugins: [
                        [           // 这里再定义数组的原因是因为可以在数组中配置插件的一些信息
                            '@babel/plugin-transform-runtime'
                        ],
                         new webpack.HotModuleReplacementPlugin(),
                    ]
                }
            }
        }]
    }
}
